package com.castle.fortress.admin.study.course.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import java.util.Date;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
/**
 * 课件管理 实体类
 *
 * @author castle
 * @since 2023-01-30
 */
@Data
public class StudyCoursewareDto implements Serializable {
	private static final long serialVersionUID = 1L;
	@JsonSerialize(using = ToStringSerializer.class)
	@JsonProperty("id")
	private Long id;
	@JsonSerialize(using = ToStringSerializer.class)
	@JsonProperty("classifyId")
	private Long classifyId;
	@JsonProperty("coursewareType")
	private Integer coursewareType;
	@JsonProperty("coursewareName")
	private String coursewareName;
	@JsonProperty("studyTime")
	private Integer studyTime;
	@JsonProperty("coursewareSize")
	private String coursewareSize;
	@JsonProperty("videoSynopsis")
	private String videoSynopsis;
	@JsonProperty("originUrl")
	private String originUrl;
	@JsonProperty("coursewareUrl")
	private String coursewareUrl;
	@JsonProperty("coursewareContent")
	private String coursewareContent;
	@JsonProperty("isDownload")
	private Integer isDownload;
	@JsonProperty("pdfImageNum")
	private Integer pdfImageNum;
	@JsonProperty("needConver")
	private Integer needConver;
	@JsonProperty("sort")
	private Integer sort;
	@JsonProperty("status")
	private Integer status;
	@JsonSerialize(using = ToStringSerializer.class)
	@JsonProperty("createUser")
	private Long createUser;
	@DateTimeFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonProperty("createTime")
	private Date createTime;
	@JsonSerialize(using = ToStringSerializer.class)
	@JsonProperty("updateUser")
	private Long updateUser;
	@DateTimeFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonProperty("updateTime")
	private Date updateTime;
	@JsonProperty("isDeleted")
	private Integer isDeleted;
	@JsonProperty("createUserName")
	private String createUserName;
	@JsonProperty("classifyIdName")
	private String classifyIdName;
	@ApiModelProperty(value = "所属章节ID")
	private Long chapterId;
	@ApiModelProperty(value = "所属课程ID")
	private Long courseId;
	@ApiModelProperty(value = "关联ID/章节下课件的ID")
	private Long relevantId;
	@ApiModelProperty(value = "学习状态(已完成/进行中)")
	private  Integer studyStatus;
	@ApiModelProperty(value = "已学习时长")
	private  Integer alreadyStudyTime;
	@ApiModelProperty(value = "学习记录ID")
	private Long logId;
}
